import request from '@/config/axios'

// 专利 VO
export interface StudentPatentVO {
  id: string // 主键
  processInstanceId: string // 流程实例ID
  accountId: number // 账号ID
  studentCode: string // 冗余-学号
  studentName: string // 冗余-姓名
  mentorId: number // 导师ID
  mentorCode: string // 导师
  mentorName: string // 导师名称
  patentName: string // 专利名称
  patentType: string // 专利类型
  publishTime: Date // 公开时间
  patentTime: Date // 授权时间
  patentStatus: string // 专利状态
  publishNumber: string // 专利公开号
  patentNumber: string // 专利授权号
  personalRanking: string // 本人排名
  casRanking: string // 署名单位中科大排名
  imrRanking: string // 署名单位金属所排名
  attachment: string // 附件
  remark: string // 备注
  reviewStatus: string // 审核状态
  reviewSubmitTime: Date // 审核提交时间
  reviewTime: Date // 审核时间
}

export interface StudentPatentAuditReqVO {
  id: string // 主键
  reviewStatus: string // 审核状态
  reviewComments: string // 审核意见
}

// 专利 API
export const StudentPatentApi = {
  // 查询专利分页
  getStudentPatentPage: async (params: any) => {
    return await request.get({ url: `/core/student-patent/page`, params })
  },

  // 查询专利详情
  getStudentPatent: async (id: number) => {
    return await request.get({ url: `/core/student-patent/get?id=` + id })
  },

  // 新增专利
  createStudentPatent: async (data: StudentPatentVO) => {
    return await request.post({ url: `/core/student-patent/create`, data })
  },

  // 修改专利
  updateStudentPatent: async (data: StudentPatentVO) => {
    return await request.put({ url: `/core/student-patent/update`, data })
  },

  // 删除专利
  deleteStudentPatent: async (id: number) => {
    return await request.delete({ url: `/core/student-patent/delete?id=` + id })
  },

  // 导出专利 Excel
  exportStudentPatent: async (params) => {
    return await request.download({ url: `/core/student-patent/export-excel`, params })
  },

  // 审核专利
  auditStudentPatent: async (data: StudentPatentAuditReqVO) => {
    return await request.put({ url: `/core/student-patent/audit`, data })
  },

  // 获得专利审核数据
  getStudentPatentAudit: async (id: string) => {
    return await request.get({ url: `/core/student-patent/get-audit-detail?id=` + id })
  }
}
